﻿using Volo.Abp.Application.Dtos;
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Domain.Shared;

namespace Volo.Abp.Application.Services
{
    public interface IReadOnlyAppService<TListDto, in TKey> : IReadOnlyAppService<TListDto, TListDto, TKey>
    {
    }

    public interface IReadOnlyAppService<TDetail, TListDto, in TKey> : IApplicationService
    {
        /// <summary>
        /// 根据Id获取数据
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        Task<ResultDto<TDetail>> GetAsync(TKey id);
        /// <summary>
        /// 根据url参数查询
        /// </summary>
        /// <param name="urlParams"></param>
        /// <returns></returns>
        Task<PageResultDto<TListDto>> GetUrlParamAsync(List<UrlParams> input);
    }
}
